package com.cloudbroker.bcs.platform.ltb.middle.extservice.lightinvesting.impl;

import com.cloudbroker.bcs.csvc.lightinvesting.api.t2service.LedSecT2Service;
import com.cloudbroker.bcs.csvc.lightinvesting.api.t2service.LedT2Service;
import com.cloudbroker.bcs.csvc.lightinvesting.api.t2service.LedThreeT2Service;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.request.InterestCertForm;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.request.RegForm;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.request.SendMsgForm;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.request.baseRelevanted.AuthuserRegbindForm;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.request.baseRelevanted.CombineApplyQryForm;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.request.baseRelevanted.ComuserBusinacctQryForm;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.request.baseRelevanted.ModAliasForm;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.request.fansRelated.*;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.request.interestRelated.ComadviserBuildForm;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.request.interestRelated.CombineApplyForm;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.request.interestRelated.HiseCommQryForm;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.response.*;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.response.baseRelevanted.CombineApplyQryBackVo;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.response.interestRelated.HiseCommQryBackVo;
import com.cloudbroker.bcs.platform.ltb.middle.extservice.lightinvesting.LightinvestingService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

/**
 * Created by xuyn15828 on 2016/3/21.
 */
@Service
public class LightinvestingServiceImpl implements LightinvestingService {

    private static final Logger logger = LoggerFactory.getLogger(LightinvestingServiceImpl.class);
    @Resource
    private LedT2Service ledT2Service;

    @Resource
    private LedSecT2Service ledSecT2Service;

    @Resource
    private LedThreeT2Service ledThreeT2Service;//

    @Override
    public RegBackVo func_register_authuser(RegForm param) {
        return ledT2Service.func_register_authuser(param);
    }

    @Override
    public ModAliasVo func_alias_mod(ModAliasForm param) {
        return ledT2Service.func_alias_mod(param);
    }

    @Override
    public InterestCertVo func_interest_cert__add(InterestCertForm param) {
        return ledT2Service.func_interest_cert__add(param);
    }

    @Override
    public CombDetailQryBackVo func_comb_details(CombDetailForm param) {
        return ledT2Service.func_comb_details(param);
    }

    @Override
    public CombineCollectVo func_comb_focus(CombineCollectForm param) {
//        return ledT2Service.func_comb_focus(param);
        return ledT2Service.func_combine_collect(param);
    }

    @Override
    public CombCollectCancelVo func_comb_focus_cancel(CombCollectCancelForm param) {
//        return ledT2Service.func_comb_focus_cancel(param);
        return ledT2Service.func_combine_collect_cancel(param);
    }

    @Override
    public CombineApplyVo func_combine_apply(CombineApplyForm param) {
        return ledT2Service.func_combine_apply(param);
    }

    @Override
    public InterestDetailVo func_interest_detail_query(InterestDetailForm param) {
        return ledT2Service.func_interest_detail_query(param);
    }

    @Override
    public AuthuserRegbindVo func_authuser_regbind(AuthuserRegbindForm param) {
        return ledT2Service.func_authuser_regbind(param);
    }

    @Override
    public SendMsgVo func_send_msg(SendMsgForm param) {
        return ledT2Service.func_send_msg(param);
    }

    @Override
    public SendMsgVo func_send_message(SendMsgForm param) {
        return ledT2Service.func_send_message(param);
    }

    public AuthuserRegbindVo func_services_authuser_regbind( AuthuserRegbindForm param){
        return  ledT2Service.func_services_authuser_regbind(param);
    }

    public RealtimeCombineQryBackVo func_realtime_combine_qry(RealtimeCombineQryForm param){
        return ledSecT2Service.func_realtime_combine_qry(param);
    }


    public RealtimeQryBackVo func_realtime_qry(RealtimeQryForm param){
        return ledSecT2Service.func_realtime_qry(param);
    }

    public CombineSearchFormQryBackVo func_combine_search(CombineSearchForm form){
        return ledSecT2Service.func_combine_search(form);
    }

    public ComuserSignQryBackVo func_comuser_sign_qry(ComuserSignQryForm param){
        return ledT2Service.func_comuser_sign_qry(param);
    }

    public ComadviserBuildVo func_comadviser_build(ComadviserBuildForm param){
        return ledSecT2Service.func_comadviser_build(param);
    }

    public CombEntrustVo func_comb_entrust_add( CombEntrustForm param){
        return ledT2Service.func_comb_entrust_add(param);
    }

    public CombSubscribeVo func_combine_focus(CombSubscribeForm param){
        return ledT2Service.func_combine_focus(param);
    }

    public InterestFocusVo func_focus_interest_add( FocusInterestByForm param){
        return ledT2Service.func_focus_interest_add(param);
    }

    @Override
    public CombRankQryBackVo func_comb_rank(CombRankForm param) {
        return ledT2Service.func_comb_rank(param);
    }

    @Override
    public RecommendedCombQryBackVo func_comb_recommend(RecommendedCombForm param) {
        return ledT2Service.func_comb_recommend(param);
    }

    @Override
    public InterestRankQryBackVo func_interest_rank_query(InterestRankForm param) {
        return ledT2Service.func_interest_rank_query(param);
    }

    @Override
    public RecommendInterestQryBackVo func_recommend_interest_query(RecommendInterestForm param) {
        return ledT2Service.func_recommend_interest_query(param);
    }

    @Override
    public ComuserBusinacctQryBackVo func_comuser_businacct_qry(ComuserBusinacctQryForm param) {
        return ledSecT2Service.func_comuser_businacct_qry(param);
    }

    public HiseCommQryBackVo func_his_securities_commission_qry(HiseCommQryForm param){
        return ledThreeT2Service.func_his_securities_commission_qry(param);
    }

    @Override
    public SignapplyQryBackVo func_extcomacct_signapply_qry(SignapplyQryForm param) {
        return ledSecT2Service.func_extcomacct_signapply_qry(param);
    }

    @Override
    public CombineApplyQryBackVo func_combine_apply_qry(CombineApplyQryForm param) {
        return ledThreeT2Service.func_combine_apply_qry(param);
    }
}
